<?php

/**
 * BbPrestamo filter form.
 *
 * @package    ingenyo-biblio
 * @subpackage filter
 * @author     Your name here
 */
class BbPrestamoFormFilter extends BaseBbPrestamoFormFilter
{

  public function configure()
  {
    parent::configure();
    unset($this['idLibro']);
    unset($this['fechaGenera']);
    unset($this['usuario']);
    unset($this['bb_prestamo_regla_list']);
    unset($this['Observacion']);
    unset($this['IdPersona']);



    $sf_formatter_revisited = new prestamofiltroFormatter($this->getWidgetSchema());
    $this->getWidgetSchema()->addFormFormatter("prestamofiltro", $sf_formatter_revisited);
    $this->getWidgetSchema()->setFormFormatterName("prestamofiltro");



    $this->configureWidgets();
    $this->validatorSchema->setOption('allow_extra_fields', true);
    $this->setLables();
    
    
  }

  public function setLables()
  {
    #$this->getWidget('IdPersona')->setLabel('Persona');
    $this->getWidget('fechaEntrega')->setLabel('Fecha de entrga');
    $this->getWidget('fechaRealDevolucion')->setLabel('Fecha real de devolucion');
    $this->getWidget('fechaVencimientoPrestamo')->setLabel('Fecha vencimiento');
    $this->getWidget('idTipoPrestamo')->setLabel('Tipo de prestamo');
    $this->getWidget('Sucursal')->setLabel('Biblioteca');

  }

  public function configureWidgets()
  {
    parent::configureWidgets();
    $this->setWidget('Sucursal', new sfWidgetFormPropelChoice(array('model' => 'BbSucursal', 'add_empty' => true,'renderer_class' => 'mbWidgetFormChosenChoice')));
    $this->setValidator('Sucursal', new sfValidatorPropelChoice(array('model' => 'BbSucursal', 'required' => false)));
    $this->setWidget('group_by', new sfWidgetFormInputHidden(array(),array('value'=>'FECHAENTREGA')));
    $this->getWidget('finalizado')->setOption('renderer_class' , 'mbWidgetFormChosenChoice');
//    $this->setWidget('IdPersona', new pmWidgetFormPropelJQuerySearch(array('model' => 'BbPersona',
//          'column' => array('NOMBRESPERSONA', 'APELLIDOPERSONA'),
//          'selected_label' => 'Seleccione una persona',
//          'search_label' => 'Buscar')));
    $this->getWidgetSchema()->moveField('idTipoPrestamo', sfWidgetFormSchema::LAST);
  }

  public function addSucursalColumnCriteria(Criteria $criteria, $field, $value)
  {
    if ($value)
    {
      $criteria->addJoin(BbPrestamoPeer::IDLIBRO, CtLibroPeer::IDLIBRO);
      $criteria->add(ctlibroPeer::IDSUCURSAL, $value);
    }
  }
  
  public function getValues()
  {
    $values = parent::getValues();
    $tainted_values = parent::getTaintedValues();
    if (array_key_exists('group_by', $tainted_values) && 
      in_array($tainted_values['group_by'],array('FECHAENTREGA','FECHAREALDEVOLUCION','FECHAVENCIMIENTOPRESTAMO')))
    {
      $values['group_by'] = $tainted_values['group_by'];
    }else{
      $values['group_by'] = 'FECHAENTREGA';
    }
    return $values;
  }

}